import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.Date;

@WebServlet("/login")
public class Login extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //获取用户名和密码
        String user = req.getParameter("user");
        String password = req.getParameter("password");
        System.out.println(user + " " + password);
        if(user == null || password == null || user.equals("") || password.equals("")){
            resp.setContentType("text/html;charset=utf8");
            resp.getWriter().write("当前请求参数不完整");
            return;
        }
        //2.验证密码
        //正常情况下是从数据库里进行读取
        //注册账号就会给数据库插入用户名和密码，登陆的时候就是验证当前用户名是否存在，以及密码是否匹配
        //此处约定，合法的用户名是张三，密码是123

        if(!user.equals("zhangsan") || !password.equals("123")){
            resp.setContentType("text/html;charset=utf8");
            resp.getWriter().write("用户名或密码不正确");
            System.out.println(666);
            return;

        }
        //3.登陆成功
        //参数设置为true是因为，如果没有session就创建，如果是false就是，如果没有session就不创建
        HttpSession session = req.getSession(true);
        //setAttribute后面存的是object对象
        //底层是一个hashMap
        //通过存储不同的sessionId来返回不同的session对象，其中session对象也是一个哈希表，根据key查看value
        session.setAttribute("user",user);
        session.setAttribute("time",System.currentTimeMillis());

        //4.让页面自动跳转到网站首页
        //此处约定目标路径是index(也使用servlet生成一个动态页面)
        resp.sendRedirect("index");

    }
}
